/*
 * 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
 * 
 * 欢迎到知启蒙网站（https://www.zhiqim.com）购买正版软件，知启蒙还提供许多开源框架和软件。
 * 
 * 1、本软件产品所有源代码受《中华人民共和国著作权法》和其他有关法律、法规的保护，其所有知识产权归湖南知启蒙科技有限公司所有；
 * 2、禁止复制和修改。不得复制修改、翻译或改编本软件所有源代码，或者基于本软件产品创作衍生作品；
 * 3、禁止进行逆向工程。不得对本软件的源代码进行逆向工程、反编译或试图以其他方式发现软件的源代码；
 * 4、个别授权：如需进行商业性的销售、复制、分发，包括但不限于软件销售、预装、捆绑等，必须获得知启蒙的书面授权和许可；
 * 5、保留权利：本注释未明示授权的其他一切权利仍归知启蒙所有，任何人使用其他权利时必须获得知启蒙的书面同意。
*/
package net.redxyz.top.dbo.sys;

import java.io.Serializable;

import org.zhiqim.kernel.annotation.AnAlias;
import org.zhiqim.kernel.annotation.AnNew;
import org.zhiqim.kernel.json.Jsons;
import org.zhiqim.orm.annotation.*;

/**
 * 淘宝API 调用日志栈信息 对应表《TAOBAO_API_ACCESS_STACK》
 */
@AnAlias("TaobaoApiAccessStack")
@AnNew
@AnTable(table="TAOBAO_API_ACCESS_STACK", key="INVOCK_STACK_ID", type="InnoDB")
@AnIndex({@AnIndexValue(name="IX_REQ_DAY_DATE", column="REQ_DAY_DATE", unique=false),
          @AnIndexValue(name="IX_METHOD_NAME", column="METHOD_NAME", unique=false)})
public class TaobaoApiAccessStack implements Serializable
{
    private static final long serialVersionUID = 1L;

    @AnTableField(column="INVOCK_STACK_ID", type="string,64", notNull=true)    private String invockStackId;    //1.程序代码位置，ID,（由线程（代码调用位置）栈信息 + 方法名 +调用日期（yyyy-mm-dd）+ 程序名称 + IP）MD5 组成
    @AnTableField(column="METHOD_NAME", type="string,128", notNull=false)    private String methodName;    //2.调用接口方法
    @AnTableField(column="REQ_DAY_DATE", type="string,20", notNull=true)    private String reqDayDate;    //3.请求的日期，yyyy-mm-dd
    @AnTableField(column="INVOCK_TYPE", type="int", notNull=true)    private int invockType;    //4.调用位置， 1， http调用，2=task调用 ，0=其他地方调用
    @AnTableField(column="SUCC_NUM", type="int", notNull=true)    private int succNum;    //5.调用成功数
    @AnTableField(column="FAIL_NUM", type="int", notNull=true)    private int failNum;    //6.调用失败数
    @AnTableField(column="PROCESS_NAME", type="string,128", notNull=false)    private String processName;    //7.进程名
    @AnTableField(column="PROCESS_IP", type="string,128", notNull=false)    private String processIp;    //8.进程名
    @AnTableField(column="STACK_INFO", type="string,8000", notNull=true)    private String stackInfo;    //9.线程（代码调用位置）栈信息

    public String toString()
    {
        return Jsons.toString(this);
    }

    public String getInvockStackId()
    {
        return invockStackId;
    }

    public void setInvockStackId(String invockStackId)
    {
        this.invockStackId = invockStackId;
    }

    public String getMethodName()
    {
        return methodName;
    }

    public void setMethodName(String methodName)
    {
        this.methodName = methodName;
    }

    public String getReqDayDate()
    {
        return reqDayDate;
    }

    public void setReqDayDate(String reqDayDate)
    {
        this.reqDayDate = reqDayDate;
    }

    public int getInvockType()
    {
        return invockType;
    }

    public void setInvockType(int invockType)
    {
        this.invockType = invockType;
    }

    public int getSuccNum()
    {
        return succNum;
    }

    public void setSuccNum(int succNum)
    {
        this.succNum = succNum;
    }

    public int getFailNum()
    {
        return failNum;
    }

    public void setFailNum(int failNum)
    {
        this.failNum = failNum;
    }

    public String getProcessName()
    {
        return processName;
    }

    public void setProcessName(String processName)
    {
        this.processName = processName;
    }

    public String getProcessIp()
    {
        return processIp;
    }

    public void setProcessIp(String processIp)
    {
        this.processIp = processIp;
    }

    public String getStackInfo()
    {
        return stackInfo;
    }

    public void setStackInfo(String stackInfo)
    {
        this.stackInfo = stackInfo;
    }

}
